// attribute
#[allow(non_upper_case_globals)] // #[warn(non_upper_case_globals)]
const NUMBER: i32 = 20;// #define같은거라, 타입 명시해야하고 값 지정
static NONO: i32 = 0; // const와 다른점? static은 같은 메모리 공간을 쓰는 보장, 주로 const를 많이씀
// static은 mut할 수 있으나, unsafe하다.
fn print_number() {
println!("{}", NUMBER)
}
fn main() {
let x = 8; // 'let' binding: i32
//NONO = 1; warning이 나옴 아래처럼.. 근데 주로 안쓰임. 더 나은 방법이 있을 거임
unsafe {
NONO = 1;
}
// &'static str 'static lifetime 프로그램 시작부터 끝까지 살아있음
}
https://doc.rust-lang.org/rust-by-example/scope/lifetime/static_lifetime.html